Kubernetes 是一個開源的容器編排系統,可讓您輕鬆地部署和管理容器化應用程式。Kubernetes 使用了 Pods、Deployments、Services 等概念來管理容器化應用程式。
您可以使用 kubectl scale 命令來增加 Pods 的數量。例如,要將 my-deployment 的 Pods 數量增加到 2,您可以使用以下命令:
kubectl scale deployment my-deployment --replicas=2
您可以使用 gcloud container clusters resize 命令來增加 Nodes 的數量。例如,要將 my-cluster 的 my-node-pool 的 Nodes 數量增加到 3,您可以使用以下命令:
gcloud container clusters resize my-cluster --node-pool my-node-pool --num-nodes 3
您可以使用 kubectl autoscale 命令來設置 HPA。HPA 會根據應用程式的使用量自動調整 Pods 的數量。例如,要將 my-deployment 的 Pods 數量最大增加到 10,並且當 CPU 使用率達到 70% 時啟動,您可以使用以下命令:
kubectl autoscale deployment my-deployment --max 10 --cpu-percent=70
您可以使用 gcloud container clusters update 命令來設置 Cluster 的 autoscaling。Cluster 的 autoscaling 會根據 Cluster 的使用量自動調整 Nodes 的數量。例如,要將 my-cluster 的 Nodes 數量最小增加到 1,最大增加到 10,您可以使用以下命令:
gcloud container clusters update my-cluster --enable-autoscaling --min-nodes=1 --max-nodes=10
您可以使用 ConfigMap 來加入應用程式的 Configuration。例如,要將 DB_HOST 的值設定為 dbhost,您可以使用以下命令:
kubectl create configmap my-configmap --from-literal=DB_HOST=dbhost
您可以使用 Secrets 來加入 Password configuration。例如,要將 DB_PASSWORD 的值設定為 dbpassword,您可以使用以下命令:
kubectl create secret generic my-secrets --from-literal=DB_PASSWORD=dbpassword
您可以使用 nodeSelector 來將服務部署到特定的 node-pools 上。例如,要將 my-deployment 部署到 my-node-pool 上,您可以使用以下命令:
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-deployment
spec:
selector:
matchLabels:
app: my-app
replicas: 2
template:
metadata:
labels:
app: my-app
spec:
containers:
- name: my-container
image: my-registry/my-container:0.0.1
nodeSelector:
nodepool: my-node-pool